package com.party.business.domain;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.party.common.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 专题对象 topic_library
 *
 * @author ruoyi
 * @date 2025-06-18
 */
@Data
@TableName(value = "topic_library")
public class TopicLibrary {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * "数据id"
     */
    @Excel(name = "数据id")
    private String dataId;

    /**
     * "标题"
     */
    @Excel(name = "标题")
    private String title;

    /**
     * "内容"
     */
    @Excel(name = "内容")
    private String content;

    /**
     * "关键字"
     */
    @Excel(name = "关键字")
    private String keyword;


    /**
     * "发布者"
     */
    @Excel(name = "发布者")
    private String publisher;

    /**
     * "来源"
     */
    @Excel(name = "来源")
    private String source;

    /**
     * "专题类型"
     */
    @Excel(name = "专题类型")
    private String topicType;

    /**
     * "文章类别领域"
     */
    @Excel(name = "文章类别领域")
    private String category;

    /**
     * "国家"
     */
    @Excel(name = "国家")
    private String nationality;

    /**
     * "审核状态"
     */
    @Excel(name = "审核状态")
    private String verifyStatus;

    /**
     * "公开状态"
     */
    @Excel(name = "公开状态")
    private String publicStatus;

    /**
     * "发布时间"
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "发布时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date publishTime;

    /**
     * "入库时间"
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "入库时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date insertTime;

    /**
     * "原始文件上传S3地址"
     */
    @Excel(name = "原始文件上传S3地址")
    private String s3Url;

    /**
     * "转换成word后上传S3地址"
     */
    @Excel(name = "转换成word后上传S3地址")
    private String s3UrlWord;

    /**
     * "标签"
     */
    @Excel(name = "标签")
    private String tags;

    /**
     * "实体"
     */
    @Excel(name = "实体")
    private String entityInfo;

    /**
     * "图谱关系"
     */
    @Excel(name = "图谱关系")
    private String relaInfo;

    /**
     * "高频词(关键词)"
     */
    @Excel(name = "高频词(关键词)")
    private String hignFreqW;

    /**
     * "固定搭配--重点词"
     */
    @Excel(name = "固定搭配--重点词")
    private String fixedColls;

    /**
     * "固定搭配--固定句式"
     */
    @Excel(name = "固定搭配--固定句式")
    private String fixedCollsSegments;

    /**
     * "高频语段"
     */
    @Excel(name = "高频语段")
    private String hignFreqSs;

    /**
     * "技术描述(重点句式)"
     */
    @Excel(name = "技术描述(重点句式)")
    private String techDescs;

    /**
     * "${comment}"
     */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String siteUrl;

    /**
     * "${comment}"
     */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String siteName;

    /**
     * "${comment}"
     */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String clusterId;

    /**
     * "文件名称"
     */
    @Excel(name = "文件名称")
    private String fileName;

    /**
     * "${comment}"
     */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String runningStatus;

    /**
     * "完成时间"
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date finishTime;

}
